package com.sunlands.zlcx.usercenter.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;

/**
 * @author gaoyanfeng
 * description: 用户自然月学习信息
 */
@Data
@Builder
@ApiModel(value = "月学习信息")
@NoArgsConstructor
@AllArgsConstructor
public class UserMonthLearnVO implements Serializable {
    private static final long serialVersionUID = 3707494491431710998L;
    private Integer userId;
    @ApiModelProperty(value = "月")
    private String yearMonths;
    @ApiModelProperty(value = "月总学习时间")
    private Integer sumMonthTime;
    @ApiModelProperty(value = "月平均每天学习时间")
    private Integer avgMonthTime;
    @ApiModelProperty(value = "月每天学习时间")
    private List<DayLearnTime> dayLearnTimeList;
    @ApiModelProperty(value = "本人学习排行")
    private FriendLearnInfo myself;
    @ApiModelProperty(value = "道友排行榜")
    private List<FriendLearnInfo> friendLearnInfoList;

    @ApiModel(value = "天学习信息")
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class DayLearnTime {
        @ApiModelProperty(value = "月每天")
        private String yearMonthsDay;
        @ApiModelProperty(value = "学习记时时间")
        private Integer ordernaryMinutes;
        @ApiModelProperty(value = "连麦时间")
        private Integer lianMaiMinutes;
    }

    @ApiModel(value = "道友学习排行")
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class FriendLearnInfo {
        private Long friendId;
        @ApiModelProperty(value = "道友名称")
        private String friendName;
        @ApiModelProperty(value = "道友头像")
        private String friendHead;
        @ApiModelProperty(value = "学习时间")
        private Integer learnMinutes;
        @ApiModelProperty(value = "道友排序")
        private Integer index;
    }
}
